package com.hsxc.cdz.base.dao;

import java.util.ArrayList;
import java.util.List;

import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import com.hsxc.cdz.base.bean.ConsoleUser;
/**
 * @author wpfei
 * @version
 */

@Repository
public class ConUserDao {
	@Autowired  
	private SqlSessionTemplate sqlSessionTemplate;
	/**
	 * 创建管理用户
	 * @param consoleUser
	 * @return
	 */
	public int insertConUser(ConsoleUser consoleUser){
		return sqlSessionTemplate.insert("insertConUser",consoleUser);
	}
	/**
	 * 删除管理用户
	 * @param id
	 * @return
	 */
	public int deleteConUser(int id){
		return sqlSessionTemplate.delete("deleteConUser",id);
	}
	/**
	 * 更新管理用户信息
	 * @param consoleUser
	 * @return
	 */
	public int updateConUser(ConsoleUser consoleUser){
		return sqlSessionTemplate.update("updateConUser",consoleUser);
	}
	/**
	 * 修改管理用户密码
	 * @param consoleUser
	 * @return
	 */
	public int updateConUserPassword(ConsoleUser consoleUser){
		return sqlSessionTemplate.update("updateConUserPassword",consoleUser);
	}
	/**
	 * 查看所有管理用户
	 * @return
	 */
    public List<ConsoleUser> findAllConUsers(){
    	return  sqlSessionTemplate.selectList("selectAllConUser");
    }
    /**
     * 获取管理用户的权限
     * @param userName
     * @return
     */
    public List<String> getConUserRoles(String userName){
    	return sqlSessionTemplate.selectList("getConUserRoles",userName);
    }
    /**
     * @根据用户角色查找用户
     */
    public List<ConsoleUser> findConUserByRole(ConsoleUser consoleUser){
    	 List<ConsoleUser > conRoleUsers= new ArrayList<ConsoleUser>();
    	 conRoleUsers= sqlSessionTemplate.selectList("findConUserByRole",consoleUser); 	
		return conRoleUsers;
    	
    }
    /**
     * 根据运营管理员查找电站管理员
     * @param consoleUser
     * @return
     */
    public List<String> findStationAdmin(ConsoleUser consoleUser){
    	return sqlSessionTemplate.selectList("findStationAdmin",consoleUser);
    }
    /**
     * 根据信息查找用户
     */
    public ConsoleUser findConUser(ConsoleUser consoleUser){
    	System.out.println(consoleUser.getUser_name());
		return  sqlSessionTemplate.selectOne("selectConUser",consoleUser);
    	
    }
    /**
     * 根据管理用户的名称查看其信息
     * @param userName
     * @return
     */
    public ConsoleUser loadConUserByName(String userName){
		return sqlSessionTemplate.selectOne("loadConUserByName",userName);
	}
}
